package com.itheima.gui2;

import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;

public class Test1 {

    public static void main(String[] args) {

        //GUI的事件处理机制

        //创建一个窗口，有一个登录按钮
        JFrame jf = new JFrame("登录窗口");     //创建一个窗口
        jf.setSize(400,400);        //设置窗口大小
        jf.setLocationRelativeTo(null);         //设置窗口居中
        jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);      //设置关闭窗口的默认操作：退出程序

        JPanel jp = new JPanel();       //创建一个面板
        jf.add(jp);         //将面板添加到窗口中

        JButton jb = new JButton("登录");         //创建一个按钮
        jp.add(jb);         //将按钮添加到面板中

        //给按钮添加点击事件监听对象
        jb.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
               JOptionPane.showMessageDialog(jf,"登录成功");
            }
        });

        //需求：监听用户键盘上下左右四个键的事件
        jf.addKeyListener(new KeyAdapter() {
            @Override
            public void keyPressed(KeyEvent e) {

               int keyCode = e.getKeyCode();        //获取键盘按键的编码

                if(keyCode == KeyEvent.VK_UP){
                    System.out.println("向上");
                }else if(keyCode == KeyEvent.VK_DOWN){
                    System.out.println("向下");
                }else if(keyCode == KeyEvent.VK_LEFT){
                    System.out.println("向左");
                }else if(keyCode == KeyEvent.VK_RIGHT){
                    System.out.println("向右");
                }
            }
        });

        jf.setVisible(true);            //显示窗口

        jf.requestFocus();          //让窗口成为焦点
    }
}
